package com.blockchain.console.service.user.query;

import java.sql.Timestamp;

import com.blockchain.common.enums.CertificateType;
import com.blockchain.common.enums.IsPass;

/**
 * 用户列表查询
 * 
 * @author blockchain
 * 
 */
public abstract interface UserQuery {

	/**
	 * 用户ID，匹配查询.
	 * 
	 * @return {@code String}空值无效.
	 */
	public abstract int getUserId();
	/**
	 * 手机号码，匹配查询.
	 * 
	 * @return {@link String}空值无效.
	 */
	public abstract String getSjh();
	/**
	 * 真实姓名，模糊查询.
	 * 
	 * @return {@link String}空值无效.
	 */
	public abstract String getName();

	/**
	 * 证件号，匹配查询.
	 * 
	 * @return {@link String}空值无效.
	 */
	public abstract String getZjh();

	/**
	 * 注册时间,大于等于查询.
	 * 
	 * @return {@link Timestamp}null无效.
	 */
	public abstract Timestamp getCreateTimeStart();

	/**
	 * 注册时间,小于等于查询.
	 * 
	 * @return {@link Timestamp}null无效.
	 */
	public abstract Timestamp getCreateTimeEnd();
	/**
	 * 状态(S正常;F:锁定),匹配查询.
	 * 
	 * @return {@link UserState}空值无效.
	 */
	public abstract IsPass getUserState();
	/**
	 * (S:是;F:否)
	 * 
	 * @return {@link UserState}空值无效.
	 */
	public abstract IsPass getSftgjrz();
	/**
	 * 证件类型
	 */
	public abstract CertificateType getCertificateType();
	
	/**
	 * 是否特殊账号
	 * 
	 * @return {@link UserState}空值无效
	 */
	public abstract IsPass getSfts();
	
	
	/**
	 *转币限额
	 */
	public abstract int getZbxe();

}
